{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Formatting Outputs"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "When you return a value or a display a value in a .NET notebook, the default formatting uses HTML to render the object. For many values, a table structure is used by default. For example:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr><td>0</td><td>hello</td></tr><tr><td>1</td><td>world</td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr><td>0</td><td><div class=\"dni-plaintext\">1</div></td></tr><tr><td>1</td><td><div class=\"dni-plaintext\">2</div></td></tr><tr><td>2</td><td><div class=\"dni-plaintext\">3</div></td></tr><tr><td>3</td><td><div class=\"dni-plaintext\">4</div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "display [\"hello\"; \"world\"]\n",
    "\n",
    "[ 1 .. 4 ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Switching to plain text only\n",
    "\n",
    "If you prefer, you can switch to plain text by default. The simplest way to do this is to register `\"text/plain\"` as the default mime type for all objects and switch the `%A` printing."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[1; 2; 3; 4]\r\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Formatter.SetPreferredMimeTypesFor(typeof<obj>, \"text/plain\")\n",
    "Formatter.Register(fun (x:obj) (writer: TextWriter) -> fprintfn writer \"%120A\" x )\n",
    "\n",
    "[ 1 .. 4 ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now reset back to defaults:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [],
   "source": [
    "Formatter.ResetToDefault()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## HTML formatting\n",
    "\n",
    "### Strings\n",
    "\n",
    "By default, multi-line content does not have formatting preserved. For example:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>value</th></tr></thead><tbody><tr><td>0</td><td>[[1]; [1; 2]; [1; 2; 3]; [1; 2; 3; 4]; [1; 2; 3; 4; 5]; [1; 2; 3; 4; 5; 6]; [1; 2; 3; 4; 5; 6; 7];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8]; [1; 2; 3; 4; 5; 6; 7; 8; 9]; [1; 2; 3; 4; 5; 6; 7; 8; 9; 10];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11]; [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13]; [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15]; [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 27];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 27; 28];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 27; 28; 29];\n",
       " [1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 27; 28; 29; 30]]</td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "[ sprintf \"%120A\" [ for i in 1 .. 30 -> [ 1 .. i ]] ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You can use styling to preserve the preformatting of such content."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<script type=\"text/javascript\">\r\n",
       "            var css = '.dni-plaintext { text-align: left; white-space: pre; font-family: monospace; });',\r\n",
       "            head = document.head || document.getElementsByTagName('head')[0],\r\n",
       "            style = document.createElement('style');\r\n",
       "\r\n",
       "            head.appendChild(style);\r\n",
       "\r\n",
       "            style.type = 'text/css';\r\n",
       "            if (style.styleSheet){\r\n",
       "              // This is required for IE8 and below.\r\n",
       "              style.styleSheet.cssText = css;\r\n",
       "            } else {\r\n",
       "              style.appendChild(document.createTextNode(css));\r\n",
       "            }</script>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "CSS \".dni-plaintext { text-align: left; white-space: pre; font-family: monospace; });\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that `Formatter.ResetToDefault()` doesn't undo any CSS changes. You can undo this change with:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<script type=\"text/javascript\">\r\n",
       "            var css = '.dni-plaintext { text-align: inherit; white-space: inherit; font-family: inherit; });',\r\n",
       "            head = document.head || document.getElementsByTagName('head')[0],\r\n",
       "            style = document.createElement('style');\r\n",
       "\r\n",
       "            head.appendChild(style);\r\n",
       "\r\n",
       "            style.type = 'text/css';\r\n",
       "            if (style.styleSheet){\r\n",
       "              // This is required for IE8 and below.\r\n",
       "              style.styleSheet.cssText = css;\r\n",
       "            } else {\r\n",
       "              style.appendChild(document.createTextNode(css));\r\n",
       "            }</script>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "CSS \".dni-plaintext { text-align: inherit; white-space: inherit; font-family: inherit; });\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Objects\n",
    "\n",
    "The default formatting behavior for many objects is to produce a table showing their properties and the values of those properties."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th>FirstName</th><th>LastName</th><th>Age</th></tr></thead><tbody><tr><td><div class=\"dni-plaintext\">Mitch</div></td><td><div class=\"dni-plaintext\">Buchannon</div></td><td><div class=\"dni-plaintext\">42</div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "type Person = { FirstName: string; LastName: string; Age: int }\n",
    "\n",
    "// Evaluate a new person\n",
    "{ FirstName = \"Mitch\"; LastName = \"Buchannon\"; Age = 42 }"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "###  Sequences\n",
    "\n",
    "When you have a collection of objects, you can see the values listed for each item in the collection:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>FirstName</th><th>LastName</th><th>Age</th></tr></thead><tbody><tr><td>0</td><td>Mitch</td><td>Buchannon</td><td><div class=\"dni-plaintext\">42</div></td></tr><tr><td>1</td><td>Hobie </td><td>Buchannon</td><td><div class=\"dni-plaintext\">23</div></td></tr><tr><td>2</td><td>Summer</td><td>Quinn</td><td><div class=\"dni-plaintext\">25</div></td></tr><tr><td>3</td><td>C.J.</td><td>Parker</td><td><div class=\"dni-plaintext\">23</div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "[\n",
    "    { FirstName = \"Mitch\"; LastName = \"Buchannon\"; Age = 42 }\n",
    "    { FirstName = \"Hobie \"; LastName = \"Buchannon\"; Age = 23 }\n",
    "    { FirstName = \"Summer\"; LastName = \"Quinn\"; Age = 25 }\n",
    "    { FirstName = \"C.J.\"; LastName = \"Parker\"; Age = 23 }\n",
    "]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Dictionaries\n",
    "\n",
    "Similarly to the behavior for `IEnumerable` objects, you'll also see table output for dictionaries, but for each value in the dictionary, the key is provided rather than the index within the collection."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>key</i></th><th>value</th></tr></thead><tbody><tr><td>zero</td><td><div class=\"dni-plaintext\">0</div></td></tr><tr><td>one</td><td><div class=\"dni-plaintext\">1</div></td></tr><tr><td>two</td><td><div class=\"dni-plaintext\">2</div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "dict [(\"zero\", 0); (\"one\", 1); (\"two\", 2)]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "###  Nested objects\n",
    "\n",
    "Now let's try something a bit more complex. Let's look at a graph of objects. \n",
    "\n",
    "We'll redefine the `Person` class to allow a reference to a collection of other `Person` instances."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>FirstName</th><th>LastName</th><th>Age</th><th>Friends</th></tr></thead><tbody><tr><td>0</td><td>Mitch</td><td>Buchannon</td><td><div class=\"dni-plaintext\">42</div></td><td><div class=\"dni-plaintext\">[ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] } ]</div></td></tr><tr><td>1</td><td>Hobie </td><td>Buchannon</td><td><div class=\"dni-plaintext\">23</div></td><td><div class=\"dni-plaintext\">[ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] } ]</div></td></tr><tr><td>2</td><td>Summer</td><td>Quinn</td><td><div class=\"dni-plaintext\">25</div></td><td><div class=\"dni-plaintext\">[ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] }, { { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Summer, LastName: Quinn, Age: 25, Friends: [ { { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }: FirstName: Mitch, LastName: Buchannon, Age: 42, Friends: [ { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] }, { { FirstName = &quot;Hobie &quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 23\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] }: FirstName: Hobie , LastName: Buchannon, Age: 23, Friends: [ { FirstName = &quot;Mitch&quot;\n",
       "  LastName = &quot;Buchannon&quot;\n",
       "  Age = 42\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [...; { FirstName = &quot;Summer&quot;\n",
       "                              LastName = &quot;Quinn&quot;\n",
       "                              Age = 25\n",
       "                              Friends = seq [...; ...] }] };\n",
       "      { FirstName = &quot;Summer&quot;\n",
       "        LastName = &quot;Quinn&quot;\n",
       "        Age = 25\n",
       "        Friends = seq [...; { FirstName = &quot;Hobie &quot;\n",
       "                              LastName = &quot;Buchannon&quot;\n",
       "                              Age = 23\n",
       "                              Friends = seq [...; ...] }] }] }, { FirstName = &quot;Summer&quot;\n",
       "  LastName = &quot;Quinn&quot;\n",
       "  Age = 25\n",
       "  Friends =\n",
       "   seq\n",
       "     [{ FirstName = &quot;Mitch&quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 42\n",
       "        Friends = seq [{ FirstName = &quot;Hobie &quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 23\n",
       "                         Friends = seq [...; ...] }; ...] };\n",
       "      { FirstName = &quot;Hobie &quot;\n",
       "        LastName = &quot;Buchannon&quot;\n",
       "        Age = 23\n",
       "        Friends = seq [{ FirstName = &quot;Mitch&quot;\n",
       "                         LastName = &quot;Buchannon&quot;\n",
       "                         Age = 42\n",
       "                         Friends = seq [...; ...] }; ...] }] } ] } ] } ] } ]</div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "type Person =\n",
    "    { FirstName: string\n",
    "      LastName: string\n",
    "      Age: int\n",
    "      Friends: ResizeArray<Person> }\n",
    "\n",
    "let mitch = { FirstName = \"Mitch\"; LastName = \"Buchannon\"; Age = 42; Friends = ResizeArray() }\n",
    "let hobie = { FirstName = \"Hobie \"; LastName = \"Buchannon\"; Age = 23; Friends = ResizeArray() }\n",
    "let summer =  { FirstName = \"Summer\"; LastName = \"Quinn\"; Age = 25; Friends = ResizeArray() }\n",
    "\n",
    "mitch.Friends.AddRange([ hobie; summer ])\n",
    "hobie.Friends.AddRange([ mitch; summer ])\n",
    "summer.Friends.AddRange([ mitch; hobie ])\n",
    "\n",
    "let people = [ mitch; hobie; summer ]\n",
    "display people"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That's a bit hard to read, right? The default formatting behaviors are not always as useful as they might be. In order to give you more control in these kinds of cases, formatters can be customized from within the .NET notebook."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Customizing\n",
    "\n",
    "### Registering plain text formatters"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's clean up the output above by customizing the formatter for the `Person.Friends` property, which is creating a lot of noise. \n",
    "\n",
    "The way to do this is to use the `Formatter` API. This API lets you customize the formatting for a specific type. Since `Person.Friends` is a sequence of `Person` objects, i.e. type `seq<Person>`, we can register a custom formatter for that type to change the output. Let's just list their first names:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [],
   "source": [
    "Formatter.Register<seq<Person>>(\n",
    "    mimeType = \"text/plain\",\n",
    "    formatter = fun people (context: FormatContext) ->\n",
    "        for person in people do\n",
    "            context.Writer.Write(person.FirstName)\n",
    "            context.Writer.Write(\" \")\n",
    "        true)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now display the `people` data again:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead><tr><th><i>index</i></th><th>FirstName</th><th>LastName</th><th>Age</th><th>Friends</th></tr></thead><tbody><tr><td>0</td><td>Mitch</td><td>Buchannon</td><td><div class=\"dni-plaintext\">42</div></td><td><div class=\"dni-plaintext\">Hobie  Summer </div></td></tr><tr><td>1</td><td>Hobie </td><td>Buchannon</td><td><div class=\"dni-plaintext\">23</div></td><td><div class=\"dni-plaintext\">Mitch Summer </div></td></tr><tr><td>2</td><td>Summer</td><td>Quinn</td><td><div class=\"dni-plaintext\">25</div></td><td><div class=\"dni-plaintext\">Mitch Hobie  </div></td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "people"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You might have noticed that `people` is of type `ResizeArray<Person>`, but the table output still includes columns for `LastName`, `Age`, and `Friends`. What's going on here? Notice that the custom formatter we just registered was registered for the mime type `\"text/plain\"`. The top-level formatter that's used when we call `display` requests output of mime type `\"text/html\"` and the nested objects are formatted using `\"text/plain\"`. It's the nested objects, not the top-level HTML table, that's using the custom formatter here. If you'd like to change the default mime type, use `SetPreferredMimeTypeFor`."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Registering HTML formatters\n",
    "\n",
    "To replace the default HTML view for a particular type, you can register a formatter for the `\"text/html\"` mime type.\n",
    "\n",
    "The HTML is specified using the HTML DSL similar to Giraffe's ViewEngine. Note: In this example we put the formatter registration in a module to prevent opening the `Html` DSL everywhere."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [],
   "source": [
    "module PersonHtmlFormatter = \n",
    "    \n",
    "    // Locally open the F# HTML DSL.\n",
    "    open Html\n",
    "\n",
    "    Formatter.Register<seq<Person>>(\n",
    "        mimeType = \"text/html\",\n",
    "        formatter = fun (people: seq<Person>) (context: FormatContext) ->\n",
    "            table [] [\n",
    "              thead [ _style [\"color: blue\"]] [\n",
    "                th [] [ \"First Name\" ]\n",
    "                th [] [ \"Last Name\" ]\n",
    "                th [] [ \"Age\" ]\n",
    "              ]\n",
    "              tbody [_style [\"color: darkolivegreen\"]] [\n",
    "                for p in people do\n",
    "                  tr [] [\n",
    "                    td [] [ p.FirstName ]\n",
    "                    td [] [ p.LastName ]\n",
    "                    td [] [ (string p.Age) ; \" years\" ] \n",
    "                  ]\n",
    "              ]\n",
    "            ]\n",
    "            |> context.Writer.Write\n",
    "            true)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now display the `people` data again:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table><thead style=\"color: blue\"><th>First Name</th><th>Last Name</th><th>Age</th></thead><tbody style=\"color: darkolivegreen\"><tr><td>Mitch</td><td>Buchannon</td><td>42 years</td></tr><tr><td>Hobie </td><td>Buchannon</td><td>23 years</td></tr><tr><td>Summer</td><td>Quinn</td><td>25 years</td></tr></tbody></table>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "people"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Registering formatters for generic types"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Formatters can be specified by using a generic type definition as a key, for example:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [],
   "source": [
    "Formatter.Register(``type`` = typedefof<System.Collections.Generic.List<_>>,\n",
    "    formatter = Action<obj,TextWriter>(fun (value: obj) (writer: TextWriter) ->\n",
    "        writer.Write(\"quack\")\n",
    "    ), \n",
    "    mimeType = \"text/html\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Then"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "dotnet_interactive": {
     "language": "fsharp"
    },
    "vscode": {
     "languageId": "dotnet-interactive.fsharp"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "quack"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "new System.Collections.Generic.List<int>()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Reflection can then be used to operate on the object at its more specific type."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": ".NET (C#)",
   "language": "C#",
   "name": ".net-csharp"
  },
  "language_info": {
   "file_extension": ".cs",
   "mimetype": "text/x-csharp",
   "name": "C#",
   "pygments_lexer": "csharp",
   "version": "9.0"
  },
  "vscode": {
   "interpreter": {
    "hash": "0f6152e55e22e51b7ef4008399a7b182027ebbf46701d01bf4cde1dfdbc88eb5"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
